package test1;

import javax.swing.*;
import java.awt.*;

/**
 * @author fengke
 */
public class Plot extends JPanel {

    private static final long serialVersionUID = 1L;

    @Override
    public void paint(Graphics gp) {
        //笔画属性
        BasicStroke bs = new BasicStroke(10.1f, BasicStroke.CAP_ROUND, BasicStroke.JOIN_BEVEL);
        super.paint(gp);
        Graphics2D gp2d = (Graphics2D) gp;

        /**
         * 在这里设置颜色
         */
        gp2d.setColor(Color.blue);
        //线段：第一个点的x坐标，第一个点的y坐标，第二个点的x坐标，第二点的y坐标
        gp2d.drawLine(30, 30, 80, 30);
        //绘制矩形的x坐标，绘制矩形的y坐标，矩形的宽度，矩形的高度
        gp2d.drawRect(10,50,100,50);
        //（四个角是弧形）绘制矩形的x坐标，绘制矩形的y坐标，矩形的宽度，矩形的高度,4个角弧度的水平直径，4个角弧度的垂直直径
        gp2d.drawRoundRect(10, 120, 100, 70, 12, 12);

        gp2d.setColor(Color.black);
        //椭圆
        gp2d.fillOval(20, 130, 30, 20);
        gp2d.fillOval(70, 130, 30, 20);

        gp2d.setColor(Color.gray);
        //圆环
        gp2d.fillArc(35, 160, 40, 25, 100, 270);
        //创建红绿蓝不透明的srgb颜色
        Color c1 = new Color(22, 147, 140);
        gp2d.setColor(c1);
        //绘制椭圆的边框。
        gp2d.drawOval(10, 200, 100, 60);
        //Graphics2D d=(Graphics2D) gp;
        gp2d.fill3DRect(150, 30, 100, 80, false);
        gp2d.fillOval(150,130, 100, 80);
        //设置笔画属性
        gp2d.setStroke(bs);
        gp2d.drawLine(300, 80, 300, 200);
    }
}
